Computational Intelligence in Empirical Software Engineering

نویسندگان

  • Ali Idri
  • Alain Abran
  • Taghi M. Khoshgoftaar
چکیده

The objective of Empirical Software Engineering is to improve the software development and maintenance processes and consequently the quality of theirs various deliverables. This can be achieved by evaluating, controlling and predicting some important attributes of software projects such as development effort, software reliability, and programmers productivity. One of the most interesting sub-field of ESE is software estimation models. Software estimation models are used to predict some critical attributes of some entities that are not yet exist. For example, we often need to predict how much a development project will cost, or how much time and effort will be needed., so that we can allocate the appropriate resources to the project. In general, estimation models relate the attribute to be predicted to some other attributes, that we can measure now, by using mathematical formulas or other techniques such as neural networks, case-based reasoning, regression trees and rule-based induction. Currently, our research concerns software cost estimation models. We have developed an innovative approach referred to as Fuzzy Analogy for software cost estimation. Nevertheless, this approach can be used to evaluate and predict other attributes such as reliability, quality, safety, and maintainability. In this paper, we present some results of our recent research related to the cost estimation field. 1. Cost estimation: Techniques and challenges Accurate and timely prediction of the development effort and schedule required to build and/or maintain a software system is one of the most critical activities in managing software projects, and has come to be known as ‘Software Cost Estimation’. In order to achieve accurate cost estimates and minimize misleading (underand over-estimates) predictions, several cost estimation techniques have been developed and validated. These techniques may be grouped into two major categories: § parametric models, and § non-parametric models. Parametric models are derived from statistical or numerical analysis of historical projects data (simple/multiple/stepwise regression, Bayesian approach, polynomial interpolation, ...)

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Application of Genetic Programming in Software Engineering Empirical Data Modelling

Research in software engineering data analysis has only recently incorporated computational intelligence methodologies. Among these approaches, genetic programming retains a remarkable position, facilitating symbolic regression tasks. In this paper, we demonstrate the effectiveness of the genetic programming paradigm, in two major software engineering duties, effort estimation and defect predic...

متن کامل

Preface: Cognitive Informatics, Cognitive Computing, and Their Denotational Mathematical Foundations (II)

Cognitive Informatics is a cutting-edge and multidisciplinary research area that tackles the fundamental problems shared by modern informatics, computing, software engineering, AI, cybernetics, cognitive science, neuropsychology, medical science, systems science, philosophy, linguistics, economics, management science, and life sciences. This editorial introduces the emerging field of cognitive ...

متن کامل

A hybrid computational intelligence model for foreign exchange rate forecasting

Computational intelligence approaches have gradually established themselves as a popular tool for forecasting the complicated financial markets. Forecasting accuracy is one of the most important features of forecasting models; hence, never has research directed at improving upon the effectiveness of time series models stopped. Nowadays, despite the numerous time series forecasting models propos...

متن کامل

Fuzzy Subtractive Clustering Based Indexing Approach for Software Components Classification

Software Engineering is not only a technical discipline of its own, but also a problem domain where technologies coming from other disciplines are relevant and can play important role. One important example is knowledge engineering [1], a term that used in a board sense to encompass artificial intelligence, computational intelligence, knowledge bases, data mining, and machine learning. Many of ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2004